<?php
class Tablas_model extends Model
{
	function Tablas_model()
	{
		parent::Model();

	}
	
	function insert_tabla($data)
	{
		return $this->db->insert('tabla_rol_list',$data);
		
	}
	
	function get_materia($rol)
	{
		$this->db->select('materia');
		$this->db->where('rol',$rol);
		$this->db->limit(1);
		return $this->db->get('causa')->row();	
	}
	
	function rol_list()
	{
		$this->db->select('*');
		return $this->db->get('tabla_rol_list');
	}
	
	function borra_fila_list($id)
	{
		$this->db->where('id', $id);
		$this->db->delete('tabla_rol_list'); 
	}
	function clean_table()
	{
		 $this->db->truncate('tabla_rol_list'); 
	}
	
	function store_tabla($fecha)
	{
		$fecha_creacion = array('fecha_creacion'=>$fecha);
		return $this->db->insert('tabla',$fecha_creacion);
	}
	function store_tabla_detalle($fecha,$hora)
	{
		$id = $this->getUltimoID();
		$data['tabla_detalle'] = $this->rol_list();
		foreach($data['tabla_detalle'] ->result() as $row)
    	{
    		$rol = $row->rol_causa;
    		$materia = $row->materia_causa;
    		$hora = $hora;
    		$fecha_ejecucion = $row->fecha_ejecucion;
    		$relator = $row->relator;
    		$presidente = $row->presidente;
    	    $campos = array('id_tabla'=>$id,'rol_causa'=>$rol,'materia'=>$materia,'fecha_ejecucion' => $fecha_ejecucion,'relator'=>$relator,'presidente'=>$presidente,'hora'=>$hora);    		
    		$this->db->insert('tabla_detalles',$campos);
    	}
    	return true;
		
	}
	
	function get_fecha()
	{
		$this->db->select('fecha_creacion');
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_rol_list')->row();
		$fecha = $resultado->fecha_creacion;
		return $fecha;
		
	}
	function get_hora()
	{
		$this->db->select('hora');
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_rol_list')->row();
		$hora = $resultado->hora;
		return $hora;
	}
	
	function getUltimoID()
    {
    	$this->db->order_by('id_tabla','desc');
    	$query = $this->db->get('tabla');
		$row = $query->row_array();	
		$id = $row['id_tabla'];	
		return $id;		
    }
	function get_id_fecha($fecha)
    {
    	$this->db->select('id_tabla');
    	$this->db->where('fecha_creacion',$fecha);
    	$this->db->limit(1);
    	return $this->db->get('tabla')->row();
    }
	function get_tabla($id_tabla)
    {
    	$this->db->select('*');
    	$this->db->where('id_tabla',$id_tabla);
    	return $this->db->get('tabla_detalles');
    }
	
    function get_hora_tabla($id_tabla)
	{
		$this->db->select('hora');
		$this->db->where('id_tabla',$id_tabla);
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_detalles')->row();
		$hora_tabla = $resultado->hora;
		return $hora_tabla;
	}
	function get_relator($id_tabla)
	{
		$this->db->select('relator');
		$this->db->where('id_tabla',$id_tabla);
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_detalles')->row();
		$relator = $resultado->relator;
		return $relator;
	}
	function get_presidente($id_tabla)
	{
		$this->db->select('presidente');
		$this->db->where('id_tabla',$id_tabla);
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_detalles')->row();
		$presidente = $resultado->presidente;
		return $presidente;
	}
	function get_rol_tabla($id_tabla)
	{
		$this->db->select('rol_causa');
		$this->db->where('id_tabla',$id_tabla);
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_detalles')->row();
		$rol_tabla = $resultado->rol_causa;
		return $rol_tabla;
	}
	function get_fecha_ejec($id_tabla)
	{
		$this->db->select('fecha_ejecucion');
		$this->db->where('id_tabla',$id_tabla);
		$this->db->limit(1);
		$resultado = $this->db->get('tabla_detalles')->row();
		$fecha_ejec = $resultado->fecha_ejecucion;
		return $fecha_ejec;
		
	}
	
	function edit_store_tabla_detalle($fecha,$hora,$id_tabla,$fecha_ejecucion,$presidente)
	{
		$this->db->where('id_tabla',$id_tabla);
    	$this->db->delete('tabla_detalles');
    	
		$data['tabla_detalle'] = $this->rol_list();
		foreach($data['tabla_detalle'] ->result() as $row)
    	{
    		$rol = $row->rol_causa;
    		$materia = $row->materia_causa;
    		$hora = $hora;
    		$fecha_ejecucion = $fecha_ejecucion;
    		$relator = $row->relator;
    		$presidente = $presidente;
    	    $campos = array('id_tabla'=>$id_tabla,'rol_causa'=>$rol,'materia'=>$materia,'fecha_ejecucion' => $fecha_ejecucion,'relator'=>$relator,'presidente'=>$presidente,'hora'=>$hora);    		
    		$this->db->insert('tabla_detalles',$campos);
    	}
    	return true;
		
	}
	function delete_tabla($id_tabla)
	{
		$this->db->where('id_tabla',$id_tabla);
    	$this->db->delete('tabla');
    	
    	$this->db->where('id_tabla',$id_tabla);
    	return $this->db->delete('tabla_detalles');
	}
	function get_tabla_total($id_tabla)
	{
		$this->db->select('*');
		$this->db->where('id_tabla',$id_tabla);
		return $this->db->get('tabla_detalles');
	}
	function get_last_fecha($fecha_actual)
	{
		$this->db->select('fecha_creacion');
                $this->db->where('fecha_creacion <=',$fecha_actual);
                $this->db->order_by('fecha_creacion','desc');
                $this->db->limit(1);
                return $this->db->get('tabla')->row();
	}
        function getIdTablaAnterior($fechaTabla)
        {
            $this->db->select('id_tabla');
            $this->db->where('fecha_creacion',$fechaTabla);
            $temp = $this->db->get('tabla')->row();
            $idTabla = $temp->id_tabla;
            return $idTabla - 1;
        }
        function getFirstId()
        {
            $this->db->select('id_tabla');
            $this->db->order_by('id_tabla', 'asc');
            $temp = $this->db->get('tabla')->row();
            $ultimoId = $temp->id_tabla;
            return $ultimoId;
        }
        function getFechaCreacion($idAnterior)
        {
            $this->db->select('fecha_creacion');
            $this->db->where('id_tabla',$idAnterior);
            $temp = $this->db->get('tabla')->row();
            $fecha_creacion = $temp->fecha_creacion;
            return $fecha_creacion;
        }
        function getIdTablaSiguiente($fechaTabla)
        {
            $this->db->select('id_tabla');
            $this->db->where('fecha_creacion',$fechaTabla);
            $temp = $this->db->get('tabla')->row();
            $idTabla = $temp->id_tabla;
            return $idTabla + 1;
        }
        function getLastId()
        {
            $this->db->select('id_tabla');
            $this->db->order_by('id_tabla', 'desc');
            $temp = $this->db->get('tabla')->row();
            $ultimoId = $temp->id_tabla;
            return $ultimoId;
        }
        function verificaId($id)
        {
            $this->db->select('id_tabla');
            $this->db->where('id_tabla',$id);
            return $this->db->get('tabla');
        }
}

?>